import request from './request';

/**
 * 获取商品列表
 * @param {Object} params 查询参数
 * @returns {Promise}
 */
export function getProductList(params) {
  return request({
    url: '/api/merchant/product/list',
    method: 'get',
    params
  });
}

/**
 * 获取商品详情
 * @param {number} id 商品ID
 * @returns {Promise}
 */
export function getProductDetail(id) {
  return request({
    url: `/api/merchant/product/${id}`,
    method: 'get'
  });
}

/**
 * 获取商品详情（用户端）
 * @param {number} id 商品ID
 * @returns {Promise}
 */
export function getProductById(id) {
  return request({
    url: `/api/user/shop/product/${id}`,
    method: 'get'
  });
}

/**
 * 搜索商品
 * @param {Object} params 搜索参数
 * @returns {Promise}
 */
export function searchProducts(params) {
  return request({
    url: '/api/user/shop/products/search',
    method: 'get',
    params
  });
}

/**
 * 添加商品
 * @param {Object} data 商品数据
 * @returns {Promise}
 */
export function addProduct(data) {
  return request({
    url: '/api/merchant/product/add',
    method: 'post',
    data
  });
}

/**
 * 更新商品
 * @param {Object} data 商品数据
 * @returns {Promise}
 */
export function updateProduct(data) {
  return request({
    url: '/api/merchant/product/update',
    method: 'post',
    data
  });
}

/**
 * 删除商品
 * @param {number} id 商品ID
 * @param {number} merchantId 商家ID
 * @returns {Promise}
 */
export function deleteProduct(id, merchantId) {
  return request({
    url: '/api/merchant/product/delete',
    method: 'post',
    data: { id, merchantId }
  });
}

/**
 * 更新商品状态
 * @param {number} id 商品ID
 * @param {number} merchantId 商家ID
 * @param {number} status 状态：0-下架，1-上架
 * @returns {Promise}
 */
export function updateProductStatus(id, merchantId, status) {
  return request({
    url: '/api/merchant/product/status',
    method: 'post',
    data: { id, merchantId, status }
  });
} 